package day04;
//面试题型：简答题、问答题
public class 晚自习 {
    public static void main(String[] args) {
        /*
        1.JDK、JRE、JVM的区别
        ①JDK：java开发工具包，是java的核心，包括：JRE+编译、运行等命令工具
        ②JRE：java运行环境，是运行java程序所必须的环境集合，包括JVM+java系统类库
        ③JVM：java虚拟机，是java实现跨平台的最核心部分，能够运行java语言所开发的程序
         */


        /*
        简述java的八种基本数据类型
        byte int long short char boolean double float
        ①byte 字节型，用于存储整数，1个字节，-128到127
        ②short 短整形，用于存储整数，2个字节，-32768到32767
        ③int 整数型，用于存储整数，最常用的整型，4个字节，-2^31到2^31-1
        ④long 长整形，用于存储较大的整数，须在后面加L，8个字节，-2^63到2^63-1
        ⑤float 单精度浮点数，用于存储小数的，占用4个字节，不能表示精确值
        ⑥double 双精度浮点数，用于存储小数的，占用8个字节，最常用的存储小数的类型，不能表示精确的值
        ⑦boolean 布尔型，专用于存储两种true或false，1个字节
        ⑧char 字符型，采用Unicode字符编码格式，用于存储单个字符，2个字节
         */

        /*
        3.switch可以作用于那些数据类型上用？
        byte、short、int、char、String、枚举，其余类型都不允许
         */

        //选择题（代码分析题）：
        /*
        1.在java中，用Math.random（）方法得到的结果可能是（）：
        答：在0.0000000-0.99999999999.之间的数

        2.分析如下代码，编译运行的结果为（）：
        A.int a=0,b=0;
        do{
           --b;//b=-1
           a--;//a=-1
           }while(a>0);//while里的为假的，直接输出
           System.out.println(b);//b=-1

        3.分析下面代码，编译运行的结果为：
        int result = 0：
        int i = 2;
        switch（i）{
          case 1 ：
            result = result+1；
          case 2 ：
            result = result+i*2;//0+2*2 result=4
          case 3:
            result = result+i*3;//4+2*3 result=10，因为没有break（终止符）
        }
        System.out.println(result);//10

        4.下列哪个循环会导致死循环:C
        A.for(int k=0;k<0;k++){}//条件为假，循环直接结束
        B.for(int K=10;k<0;k--){}//条件为假，循环直接结束
        C.for(int k=0;k<10;k--){}
        D.for(int k=0;k>0;k++){}//条件为假，循环直接结束
         */
    }
}
